<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:f="http://java.sun.com/jsf/core"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      xmlns:p="http://primefaces.org/ui"
      xmlns:composite="http://java.sun.com/jsf/composite">

    <h:head>
        <f:facet name="first">
            <meta content="text/html; charset=UTF-8" http-equiv="Content-Type" />
        </f:facet>
    </h:head>

    <composite:interface>
        <composite:attribute name="lblBusqueda" type="java.lang.String" />
        <composite:attribute name="lblAccion" type="java.lang.String" />
        <composite:attribute name="idObserver" type="java.lang.String"/>
        <composite:attribute name="update" type="java.lang.String"/>
        <composite:attribute name="sedeValue" type="pe.com.cotelasa.scp.entidad.Sede"/>
        <composite:attribute name="isEditable" type="java.lang.Boolean"/>
        <composite:attribute name="proveedorValue" type="pe.com.cotelasa.scp.entidad.Proveedor"/>
        <composite:attribute name="existeProveedor" type="java.lang.Boolean" default="true"/>
        <composite:attribute name="esEmpresa" type="java.lang.String" default="no"/>
    </composite:interface>

    <composite:implementation>

        <div id="#{cc.clientId}">


            <p:panelGrid  id="idBusqueda" style="width:100%">
                <p:row>
                    <p:column style="width:160px">
                        <h:outputLabel id="lblBusqueda" value="#{cc.attrs.lblBusqueda}: " class="lblForm" />
                    </p:column>
                    <p:column style="text-align:left" colspan="2">
                        <p:inputText onkeyup="cambiarMayuscula(this)" id="txtValor" required="true" size="80" readonly="true"
                                     value="#{cc.attrs.sedeValue.direccion}" rendered="#{!cc.attrs.isEditable}"/>
                        <h:outputText styleClass="lblVer"
                                      value="#{cc.attrs.sedeValue.direccion}" rendered="#{cc.attrs.isEditable}"/>
                        <p:commandButton id="btnFindPtoPartida" ajax="true" actionListener="#{MBCompDirLocProv.initialisation}" icon="ui-icon-search"
                                         value="#{cc.attrs.lblAccion}" oncomplete="#{cc.id}.show()"  immediate="true" style="font-size: 10px"
                                         update="cbxTipoProv cbxProveedor idDatatable pnlLocProv" rendered="#{!cc.attrs.isEditable}">
                            <f:attribute name="proveedorID" value="#{cc.attrs.proveedorValue}" />           
                            <f:attribute name="esEmpresa" value="#{cc.attrs.esEmpresa}" />   
                        </p:commandButton>
                    </p:column>
                </p:row>
            </p:panelGrid>

            <p:dialog id="idFindDirLoc" header="Lista de direcciones de locales" rendered="#{!cc.attrs.isEditable}"
                      showEffect="explode" widgetVar="#{cc.id}" modal="true" maximizable="true">

                <p:messages id="msgs" showDetail="false"  autoUpdate="true" closable="true" globalOnly="true"/>
                <p:panelGrid id="pnlLocProv" style="width:100%">
                    <p:row rendered="#{cc.attrs.existeProveedor}">
                        <p:column>
                            <h:outputLabel id="lblProveedor" value="TIPO PROVEEDOR:" class="lblForm" />
                        </p:column>
                        <p:column style="width: auto">
                            <p:selectOneMenu id="cbxTipoProv"  
                                             value="#{BKCompDirLocProv.idTipoProveedorBusqueda}">
                                <f:selectItem itemLabel="Seleccionar" itemValue="" />
                                <f:selectItems value="#{BKCompDirLocProv.listaTipoProveedor}"
                                               var="tipoGuia" itemLabel="#{tipoGuia.desParametroDet}"
                                               itemValue="#{tipoGuia.valCadena}" />
                                <p:ajax event="change" listener="#{MBCompDirLocProv.buscarProveedorPorTipo}" update="cbxProveedor" />
                            </p:selectOneMenu>
                        </p:column>

                    </p:row>
                    <p:row rendered="#{cc.attrs.existeProveedor}">
                        <p:column>
                            <h:outputLabel id="dlglblProv" value="PROVEEDOR: " class="lblForm" />
                        </p:column>
                        <p:column colspan="2">
                            <p:autoComplete value="#{BKCompDirLocProv.proveedorBusqueda}" onkeyup="cambiarMayuscula(this)" 
                                            completeMethod="#{MBCompDirLocProv.buscarProveedor}"
                                            dropdown="true" disabled="#{BKCompDirLocProv.enableCbxProveedor}"
                                            id="cbxProveedor" var="proveedor"  size="40"
                                            itemLabel="#{proveedor.razonSocial}"
                                            itemValue="#{proveedor}" converter="#{proveedorConverter}"
                                            forceSelection="true"/>
                        </p:column>
                    </p:row>

                    <p:row rendered="#{cc.attrs.existeProveedor}">
                        <p:column colspan="2">
                            <p:commandButton id="btnFindLoc" value="BUSCAR LOCALES" 
                                             ajax="true" update="idDatatable" process="@this cbxTipoProv cbxProveedor"
                                             actionListener="#{MBCompDirLocProv.buscarLocalesDelProveedor}"/>
                        </p:column>
                    </p:row>
                    <p:row>
                        <p:column colspan="3">
                            <p:fieldset id="pnlTblLocProv"  legend="TABLA DE LOCALES">
                                <p:dataTable id="idDatatable" var="sede"
                                             value="#{BKCompDirLocProv.listaLocProv}"
                                             emptyMessage="No se encontraron Locales" filteredValue=""
                                             rowIndexVar="rowIndex" paginator="true" rows="7"
                                             paginatorTemplate="{CurrentPageReport}  {FirstPageLink} {PreviousPageLink} 
                                             {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
                                             rowsPerPageTemplate="5,10,15" rowKey="#{sede.id}"  
                                             selection="#{BKCompDirLocProv.sedeCurrent}" selectionMode="single"
                                             rowStyleClass="#{sede.sedeAdministradora eq 1?'vendido':null}">

                                    <p:ajax event="rowSelect"/>

                                    <p:column id="idColumnaNum" style="width: 2%" headerText="Num.">
                                        <h:outputText value="#{rowIndex+1}" />
                                    </p:column>

                                    <p:column id="idColumnaDesc" style="width: 95%"
                                              sortBy="#{sede.direccion}" headerText="Direccion">
                                        <h:outputText value="#{sede.direccion}" />
                                    </p:column>
                                </p:dataTable>
                            </p:fieldset>
                        </p:column>
                    </p:row>
                    <p:row>
                        <p:column colspan="3" style="text-align:center">

                            <p:commandButton id="btnAceptaDirProvNormal" 
                                             value="Aceptar" ajax="true"
                                             process="@this" 
                                             actionListener="#{MBCompDirLocProv.aceptar(cc.attrs.idObserver)}"  
                                             update="txtValor #{cc.attrs.update}"
                                             oncomplete="#{cc.id}.hide()"/>

                            <p:commandButton id="btnCancelaDirProv" value="Cancelar"
                                             type="button" onclick="#{cc.id}.hide();" />

                        </p:column>
                    </p:row>
                </p:panelGrid>

            </p:dialog>

        </div>
    </composite:implementation>
</html>